package org.cashbook.core.objects;

import org.cashbook.core.objects.luxuryClass.ILuxuryClass;

public interface ILuxuryClassManager {
	
	/**
	 * Returns a reference to a luxuryClassDeluxe instance
	 */
	public ILuxuryClass getLuxuryClassDeluxe();
	
	/**
	 * Returns a reference to a luxuryClassStandard instance
	 */
	public ILuxuryClass getLuxuryClassStandard();
	
	/**
	 * Returns a reference to a luxuryClassEssential instance
	 */
	public ILuxuryClass getLuxuryClassEssential();
	
	/**
	 * Writes all luxuryClasses into the buffer
	 */
	public void updateBuffer();
	
	/**
	 * Checks if all changes have already been written into the buffer
	 * @return True, if all changes are written into the buffer; False, if not
	 */
	public boolean bufferUptodate();
	
	public String toString();

}
